package com.ruoyi.seal.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.Date;
import java.util.List;

/**
 * 用印对象 seal
 *
 * @author 钟彧
 * @date 2022-08-05
 */

public class Seal extends BaseEntity {

    /**
     * 用印流水号
     */
    @Excel(name = "用印流水号")
    private String sealId;

    /**
     * 申请人id
     */
    private Long userId;

    /**
     * 申请人姓名
     */
    @Excel(name = "申请人姓名")
    private String userName;

    /**
     * 申请人部门
     */
    @Excel(name = "申请人部门")
    private String userDept;

    /**
     * 申请印章类别
     */
    @Excel(name = "申请印章类别")
    private String sealType;

    /**
     * 创建时间
     */
    @Excel(name = "申请日期", width = 15, dateFormat = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date createTime;

    /**
     * 发送单位
     */
    @Excel(name = "发送单位")
    private String sentDept;

    /**
     * 标题或事由
     */
    @Excel(name = "标题或事由")
    private String sealTitle;

    /**
     * 上传附件
     */
    private String sealFile;

    /**
     * 经办人
     */
    private String handledBy;

    /**
     * 文件份数
     */
    @Excel(name = "文件份数")
    private int fileNum;

    private Long deptMasterId;

    /**
     * 科室负责人
     */
    @Excel(name = "科室负责人")
    private String deptMaster;

    /**
     * 科室负责人是否同意
     */
    @Excel(name = "科室负责人是否同意", readConverterExp = "0=未审核,1=同意,2=不同意")
    private String deptIdea;

    /**
     * 科室负责人审批时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date deptMasterTime;

    /**
     * 科室审核意见
     */
    @Excel(name = "科室审核备注")
    private String deptRemarks;


    private Long sealMasterId;

    /**
     * 用印审批人
     */
    @Excel(name = "用印审批人")
    private String sealMaster;

    /**
     * 用印审批人是否同意
     */
    @Excel(name = "用印审批人是否同意", readConverterExp = "0=未审核,1=同意,2=不同意")
    private String sealIdea;

    /**
     * 用印审批人审批时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date sealMasterTime;

    /**
     * 用印审批人意见
     */
    @Excel(name = "用印审批人备注")
    private String sealRemarks;

    /**
     * 申请人备注
     */
    @Excel(name = "申请人备注")
    private String userRemarks;

    /**
     * 状态（0未审批，1审批中，2取消）
     */
    private int deleted;

    /**
     * 提交日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date submitTime;

    /**
     * 最后修改时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date lastUpdateTime;

    /**
     * 前端liist选择数组
     *
     * @return
     */
    private List<String> ids;

    public String getSealId() {
        return sealId;
    }

    public void setSealId(String sealId) {
        this.sealId = sealId;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getUserDept() {
        return userDept;
    }

    public void setUserDept(String userDept) {
        this.userDept = userDept;
    }

    public String getSealType() {
        return sealType;
    }

    public void setSealType(String sealType) {
        this.sealType = sealType;
    }

    @Override
    public Date getCreateTime() {
        return createTime;
    }

    @Override
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getSentDept() {
        return sentDept;
    }

    public void setSentDept(String sentDept) {
        this.sentDept = sentDept;
    }

    public String getSealTitle() {
        return sealTitle;
    }

    public void setSealTitle(String sealTitle) {
        this.sealTitle = sealTitle;
    }

    public String getSealFile() {
        return sealFile;
    }

    public void setSealFile(String sealFile) {
        this.sealFile = sealFile;
    }

    public String getHandledBy() {
        return handledBy;
    }

    public void setHandledBy(String handledBy) {
        this.handledBy = handledBy;
    }

    public int getFileNum() {
        return fileNum;
    }

    public void setFileNum(int fileNum) {
        this.fileNum = fileNum;
    }

    public String getDeptMaster() {
        return deptMaster;
    }

    public void setDeptMaster(String deptMaster) {
        this.deptMaster = deptMaster;
    }

    public String getDeptIdea() {
        return deptIdea;
    }

    public void setDeptIdea(String deptIdea) {
        this.deptIdea = deptIdea;
    }

    public String getDeptRemarks() {
        return deptRemarks;
    }

    public void setDeptRemarks(String deptRemarks) {
        this.deptRemarks = deptRemarks;
    }

    public String getSealMaster() {
        return sealMaster;
    }

    public void setSealMaster(String sealMaster) {
        this.sealMaster = sealMaster;
    }

    public String getSealIdea() {
        return sealIdea;
    }

    public void setSealIdea(String sealIdea) {
        this.sealIdea = sealIdea;
    }

    public String getSealRemarks() {
        return sealRemarks;
    }

    public void setSealRemarks(String sealRemarks) {
        this.sealRemarks = sealRemarks;
    }

    public String getUserRemarks() {
        return userRemarks;
    }

    public void setUserRemarks(String userRemarks) {
        this.userRemarks = userRemarks;
    }

    public int getDeleted() {
        return deleted;
    }

    public void setDeleted(int deleted) {
        this.deleted = deleted;
    }

    public List<String> getIds() {
        return ids;
    }

    public void setIds(List<String> ids) {
        this.ids = ids;
    }

    public Long getDeptMasterId() {
        return deptMasterId;
    }

    public void setDeptMasterId(Long deptMasterId) {
        this.deptMasterId = deptMasterId;
    }

    public Long getSealMasterId() {
        return sealMasterId;
    }

    public void setSealMasterId(Long sealMasterId) {
        this.sealMasterId = sealMasterId;
    }

    public Date getDeptMasterTime() {
        return deptMasterTime;
    }

    public void setDeptMasterTime(Date deptMasterTime) {
        this.deptMasterTime = deptMasterTime;
    }

    public Date getSealMasterTime() {
        return sealMasterTime;
    }

    public void setSealMasterTime(Date sealMasterTime) {
        this.sealMasterTime = sealMasterTime;
    }

    public Date getSubmitTime() {
        return submitTime;
    }

    public void setSubmitTime(Date submitTime) {
        this.submitTime = submitTime;
    }

    public Date getLastUpdateTime() {
        return lastUpdateTime;
    }

    public void setLastUpdateTime(Date lastUpdateTime) {
        this.lastUpdateTime = lastUpdateTime;
    }

    @Override
    public String toString() {
        return "Seal{" +
                "sealId='" + sealId + '\'' +
                ", userId=" + userId +
                ", userName='" + userName + '\'' +
                ", userDept='" + userDept + '\'' +
                ", sealType='" + sealType + '\'' +
                ", createTime=" + createTime +
                ", sentDept='" + sentDept + '\'' +
                ", sealTitle='" + sealTitle + '\'' +
                ", sealFile='" + sealFile + '\'' +
                ", handledBy='" + handledBy + '\'' +
                ", fileNum=" + fileNum +
                ", deptMasterId=" + deptMasterId +
                ", deptMaster='" + deptMaster + '\'' +
                ", deptIdea='" + deptIdea + '\'' +
                ", deptMasterTime=" + deptMasterTime +
                ", deptRemarks='" + deptRemarks + '\'' +
                ", sealMasterId=" + sealMasterId +
                ", sealMaster='" + sealMaster + '\'' +
                ", sealIdea='" + sealIdea + '\'' +
                ", sealMasterTime=" + sealMasterTime +
                ", sealRemarks='" + sealRemarks + '\'' +
                ", userRemarks='" + userRemarks + '\'' +
                ", deleted=" + deleted +
                ", submitTime=" + submitTime +
                ", lastUpdateTime=" + lastUpdateTime +
                ", ids=" + ids +
                '}';
    }
}
